home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 9 / Night Owl CD-ROM (NOPV9) (Night Owl Publisher) (1993).ISO / 009a / mblib10.zip / REVISION.HST < prev   
Text File  |  1993-03-07  |  5KB  |  87 lines

  1. + = added
  2. - = removed
  3. * = changed
  4. ! = fixed bug - or at least replaced by another one
  5.  
  6. Revisions to beta 1:
  7. + Additions to the .H file to allow usage in C++
  8. * Correct working with C++ has been verified.
  9. + Add warning to .DOC: FSC-0001 covers 2D adressing only. Zone and point fields
  10.   aren't used correctly by all software!!
  11. ! The *_prevto () family contained a major bug: if the record number passed to
  12.   the function is lower than 500, the function returned that same number. 
  13.   Fixed.
  14. * Used TDSTRIP on the .OBJ files to remove junk before adding them to the .LIB
  15.   files. Stupid that I didn't do that before. I tried, but for some reason it
  16.   didn't work. Now it did, though. :-)
  17. + msg_write_new would accept non-existent (<= 0 or > 200) board numbers. Added
  18.   a routine to check the board number and return an error if need be.
  19. ! The internal Pascal <--> C format conversion routine would overwrite 
  20.   existing records when writing headers to disk. Fixed.
  21. ! When making consecutive calls to msg_write_new, not all messages would be
  22.   written to the correct record number. This seemed to be related to internal
  23.   DOS buffering: after writing a record, the filelength doesn't seem to have
  24.   increased. If the message base is closed and reopened, everything's fine.
  25.   This problem turned out to be caused by the fact that I used the good old
  26.   filelength () call (a level 1 call) on a stream (which is subject to level 2
  27.   handling). But since a stream buffers writes, a level 1 call won't see any
  28.   appended bytes until the stream buffer is flushed. Therefore, the following
  29.   construction
  30.     fwrite (& buffer, sizeof (MSGHDR_RECORD), 1, f_msghdr);
  31.     len = filelength (fileno (f_msghdr));
  32.   will return the number of bytes *before* the fwrite, unless the stream
  33.   buffer has overflowed and was flushed - but the returned length is probably
  34.   incorrect.
  35.   Replaced all this by a routine that utilizes level 2 calls only.
  36. ! Corrected a confusing typo in the errorstring example in the documentation.
  37.  
  38. Revisions to BETA 2:
  39. ! net_next () contained a small but pesky bug, causing it not to work. :-)
  40.   Fixed.
  41. + Added the msg_fixup4d () and net_fixup4d () functions to overcome the problem
  42.   caused by the fact that the zone and point fields in the message headers are
  43.   not supported by FSC-0001. Some message editors and mailers use these fields
  44.   for something else or not at all. The new functions convert the header fields
  45.   into INTL and TOPT/FMPT kludges.
  46. - Removed the #include <dir.h> in MB_LIB.H. It wasn't needed anymore, and it
  47.   got in the way of the C++ users.
  48. ! Because I hadn't read the C reference carefully enough :-) I had made a 
  49.   mistake when converting a time structure into a formatted message header
  50.   field. This caused messages to be written on the most unlikely dates. Fixed.
  51.   While I was at it I've changed the netmail header formatting to be 100%
  52.   FSC-0001 compliant.
  53. - MA_UNSENT didn't do what I expected it to do. In the WRITEMSG.C example I'm
  54.   no longer messing around with it. :-)
  55. * Ran the .DOC through the spell checker after suggestions by Albert Roos.
  56.   Pfffff....... any idea what a mess it is when you run C source examples
  57.   through Word Perfect? :-(
  58. * Changed a few variable types which might have caused portability problems
  59.   in the future.
  60. ! The key file didn't always give a clean compile. It does now.
  61.  
  62. Revisions to BETA3:
  63. * Changed the names of a few internal functions in order to avoid conflicts
  64.   in the future, for example when MB_lib will be used with the C version of
  65.   RADU (RA Door Lib - RADO? RADL? RADOL? Suggestions welcome...)
  66. ! The net_write routine returned a NULL instead of a nonzero integer on file
  67.   creation errors. Fixed.
  68. ! I had made a stupid mistake involving some pointer declarations an a bit of
  69.   tricky mixed-model assembly routines. Fixed. I hope.
  70. + Tested MB_lib in a DesqView environment, just to be sure. No problems found.
  71. ! Believe it or not, but I've found yet another bug in the *prev* search
  72.   routines... :-( Comparing signed and unsigned integers caused an infinite
  73.   loop when searching backward under special circumstances.
  74.  
  75. March 1993: Version 1.0 released!
  76.  
  77.  
  78. Ideas for a next version (if and when):
  79. + Thinking about a txt_merge function. This could easily be done by dumping a 
  80.   message text to the txt_add () function, if there wasn't the problem that the
  81.   string print routine is supposed to accept a (char *) and nothing more - so
  82.   how do we pass the text handle to that routine? Could be done by means of an
  83.   internal global, but I consider this unelegant.
  84. * Performance could be increased by utilizing massive internal buffering. 
  85.   However, precautions should be taken to avoid trouble with file sharing!
  86.   (The buffers should be shared as well, I think. Any ideas?)
  87.